package com.bysj.sausys.service;

import com.bysj.sausys.beans.PageQuery;
import com.bysj.sausys.beans.PageResult;
import com.bysj.sausys.model.SysAss;

import java.util.List;
import java.util.Map;

/**
 * 社团Service接口
 *
 * @author WangZK
 */
public interface ISysAssService {

    /**
     * 根据id修改社团状态
     *
     * @param assId
     * @param username
     * @return
     */
    int updateStatus(Integer assId, String username);

    /**
     * 保存社团信息
     *
     * @param sysAss
     * @param username
     */
    void save(SysAss sysAss, String username);

    /**
     * 获取社团列表
     *
     * @param keyword
     * @param pageQuery
     * @return
     */
    PageResult getPageByKeyword(String keyword, PageQuery pageQuery);

    /**
     * 根据id获取社团信息
     *
     * @param id
     * @return
     */
    SysAss findById(Integer id);

    /**
     * 更新社团信息
     *
     * @param sysAss
     * @param username
     */
    void update(SysAss sysAss, String username);

    /**
     * 获取所有社团编号和名称
     *
     * @param status
     * @return
     */
    List<Map> getAllIdAndNameAndStatus(Integer status);

    /**
     * 根据社团状态和类型分页获取社团列表
     *
     * @param type
     * @param status
     * @param pageQuery
     * @return
     */
    PageResult getPageByTypeAndStatus(String type, Integer status, PageQuery pageQuery);
}
